Circuit Emulation Service (“CES”) allows time division multiplexing (“TDM”) services such as DS-n and E-n circuits to be transparently extended across a packet network. With circuit emulation over IP, for example, TDM data received from an external device at the edge of an Internet Protocol (“IP”) network is converted to IP packets, sent through the IP network, passed out of the IP network to its destination, and reassembled into a TDM bit stream. One application of CES is the interconnection of enterprise private telephone networks at different sites. For example, CES over a packet network can be used to connect two private branch exchanges (“PBXs”) on two different campuses without having packet transport capabilities on the PBXs themselves. This inter-working allows voice traffic between the two campuses to use a packet network backbone instead of leased TDM lines, and also allows voice and data traffic to use the same packet network.
In order for CES to function properly it is desirable to achieve the same clock in both the transmitting and receiving ends of a TDM circuit from end-to-end such that, for example, the T1 stream of a downstream PBX transmits with the clocking characteristics as the T1 stream of the upstream PBX. Known clocking techniques include both synchronous and asynchronous clocking modes, of which the asynchronous clocking modes include Differential Clock Recovery, Independent Clocking, Clock Recovery using Simple Timestamps, Adaptive Buffer-Fill-based Clock Recovery, and Adaptive Packet Inter-arrival Time Averaging-based Clock Recovery.
In the timestamp-based technique for clock synchronization, a master periodically sends explicit time indications or timestamps to a slave to enable the slave to synchronize its local clock to the transmitter's clock. A high-level view of a clock synchronization scheme based on timestamps is shown in FIG. 1. This synchronization strategy allows multiple slaves, for example in a broadcast or point-to-multipoint communication scenario, to synchronize their clocks to the master. The master clock could consist essentially of an oscillator and a pulse counter. The oscillator issues periodic pulses that constitute the input to the pulse (timestamp) counter. The output of the counter represents the master clock signal and is incremented by a fixed amount at each pulse. Samples of master clock signals are communicated to the slave as timestamps.
A phase lock loop (“PLL”) at the slave uses the timestamps, which constitute the PLL reference signal, to lock onto the master clock. The PLL has four main components: a phase detector, a loop filter, an analog or digitally controlled oscillator, and a timestamp counter. The phase detector computes the error signal as the difference between the reference signal and the output signal of the PLL. The error signal is passed on to the loop filter which is responsible for eliminating possible jitter and noise in the input signal. The controlled oscillator, which typically has a center frequency, oscillates at a frequency which is determined by the output signal of the loop filter. However, it would be desirable to reduce PLL input error.